基础查询
主键查询
查询所有
hits 默认返回 10条数据。
分页查询
查询具体字段
查询结果默认按照 _score 倒序排列
自定义排序
自定义排序后 _score 字段的值就会变成 null
聚合查询
zi_ding_yi_name 是自定义的聚合查询名称,word_count 是聚合的字段。最后结果中,可以看到 word_count 值为 345 的 doc 有6个,34325 的有 4 个。
多组聚合
字段简单计算
高级查询
子条件查询: 特定字段查询所指特定值
复合条件查询: 以一定的逻辑组合子条件查询
子条件查询
Query context
在查询过程中,除了判断文档是否满足查询条件外, ES还会计算一个_score来标识匹配的程度,旨在判断目标文档
和查询条件匹配的有多好。
全文本查询
针对文本类数据,例如模糊匹配
完全匹配查询
多个字段模糊匹配查询
我们还可以进行DSL 语法查询,例如查询字段值包含 java 或者 武功。
在 DSL 查询中,我们也可以指定在哪些字段中进行查询。
字段级别查询
针对结构化数据,如数字,日期等。例如,查询 word_count 为 252 的值。
还可以进行范围查询
Filter context
在查询过程中,只判断该文档是否满足条件,只有 yes 或者 no。
复合条件查询
固定分数查询
constant_score 代表固定分数查询,boost 代表分数的值。
布尔查询
下图中,代表查询 author 包含詹小鱼或者 title 包含 java 的值。是一种或者的关系。
下图中的查询代表,查询 author 包含詹小鱼且 title 包含 java 的值。并且将查询结果进行过滤,过滤出 word_count 为 345 的数据。
还可以进行 must_not 查询,是一种非的关系。